package lambda;

import java.util.Comparator;

public class LambdaDemo1 {
    public static void main(String[] args) {
        /*
            lambda表达式演化步骤
         */
        //步骤一: 完整表达式
        Comparator<Integer> c = new Comparator<Integer>() {

            @Override
            public int compare(Integer o1, Integer o2) {
                return o2 - o1;
            }
        };

        //步骤二: 去除new 类名及方法名部分, 保留参数列表
        Comparator<Integer> c1 = (Integer o1, Integer o2) -> {
            return o2 - o1;
        };

        //步骤三: 忽略参数类型
        Comparator<Integer> c2 = (o1, o2) -> {
            return o2 - o1;
        };
        //步骤四: 如果方法只有一句代码, 方法体的"{}"可以忽略, 并且如果这句话有return关键字, 那么也要一同忽略
        Comparator<Integer> c3 = (o1, o2) -> o2 - o1;
    }
}
